Generating extended data from a pattern-recognition model for a computer system

ABSTRACT

Some embodiments of the present invention provide a system that generates extended data for a pattern-recognition model used in electronic prognostication for a computer system. During operation the system determines, for each sensor in a set of sensors, a regression coefficient between training data from the sensor and training data from each of the other sensors in the set of sensors. Next, for each sensor in the set of sensors, the system stretches the training data from each of the other sensors by a predetermined amount, and generates extended data for the sensor based on the stretched training data for each of the other sensors and the regression coefficients between training data from the sensor and training data from each of the other sensors.

BACKGROUND

1. Field

The present invention generally relates to techniques for electronicprognostication for computer systems. More specifically, the presentinvention relates to a method and an apparatus that generates extendeddata for a pattern-recognition model used in electronic prognosticationfor a computer system.

2. Related Art

Many computer systems are equipped with a significant number of hardwareand software sensors which can be use to monitor performance parametersof the computer system. One use for the monitored performance parametersis electronic prognostication for the computer system using apattern-recognition model based on nonlinear, nonparametric (NLNP)regression. Typically, the pattern-recognition model is constructedduring a training phase in which the correlations among the performanceparameters are learned by the model. Then, during operation of thecomputer system, the pattern-recognition model is used to estimate thevalue of each performance parameter in the model as a function of theother performance parameters. Significant deviations between theestimates from the model and the monitored performance parameters mayindicate a potential incipient degradation mode in the computer system.

One issue that may be encountered when using an NLNP regressionpattern-recognition model is that after the training data set isgenerated during the training phase and used to train the model, theremay be configuration changes to the computer system that cause theperformance or operational regime of the computer system to shift into aregime outside of that observed during the training phase. However, anNLNP regression pattern-recognition model may not function correctlywhen operating on input data that falls outside of the training dataset.

For example, suppose an NLNP regression pattern-recognition model istrained using a training data set generated from a computer systemoperating using 2 gigabyte (GB) dual in-line memory modules (DIMMs). Ifa customer upgrades the computer system by replacing the 2 GB DIMMs with4 GB DIMMs that draw more power and run hotter, the operating regime ofthe upgraded computer may cause one or more of the monitored performanceparameters, such as temperature, current, or voltage, to go outside theoperational regime used during the training phase. This can result infalse alarms being generated based on output from the NLNP regressionpattern-recognition model, even if the computer system is functioningcorrectly. Typically, the model would have to be re-trained based on thenew configuration. However, the training period can often be as long as10-14 days for a computer system in the field. Additionally, trainingmay be required each time a customer reconfigures the computer system,extending the length of time the computer system is in a training phaseand potentially reducing the amount of time the model can performelectronic prognostication for the computer system.

Hence, what is needed is a method and system that generates extendeddata for a pattern-recognition model used in electronic prognosticationfor a computer system without the above-described problems.

SUMMARY

Some embodiments of the present invention provide a system thatgenerates extended data for a pattern-recognition model used inelectronic prognostication for a computer system. During operation, thesystem determines, for each sensor in a set of sensors, a regressioncoefficient between training data from the sensor and training data fromeach of the other sensors in the set of sensors. Next, for each sensorin the set of sensors, the system stretches the training data from eachof the other sensors by a predetermined amount, and generates extendeddata for the sensor based on the stretched training data for each of theother sensors and the regression coefficients between training data fromthe sensor and training data from each of the other sensors.

In some embodiments, the pattern-recognition model uses a nonlinear,nonparametric regression technique.

In some embodiments, the pattern-recognition model uses a multivariatestate estimation technique (MSET).

In some embodiments, the predetermined amount that the training data isstretched is determined based on a difference between: stretched dataalarms generated by a statistical hypothesis test of residuals using atest data set for the pattern-recognition model trained with both thetraining data set and the extended data, and training data alarmsgenerated by the statistical hypothesis test of residuals using the testdata set for the pattern-recognition model trained with the trainingdata set and excluding the extended data.

In some embodiments, the test data set includes test data collectedduring degradation of the computer system, and the number of trainingdata alarms is equal to the number of stretched data alarms.

In some embodiments, the test data set includes test data collectedduring periods where there is no degradation of the computer system andthere are no false stretched data alarms.

In some embodiments, for each sensor in the set of sensors, the systemadditionally stretches the training data from each of the other sensorsby a second predetermined amount, and generates extended data for thesensor based on the training data stretched by the second predeterminedamount, for each of the other sensors and the regression coefficientsbetween training data from the sensor and training data from each of theother sensors.

In some embodiments, the set of sensors includes only a predeterminednumber of the sensors in the computer system with the highestcorrelations.

In some embodiments, the system monitors the training data from thesensors in the computer system during a training period, whereinmonitoring the training data includes systematically monitoring andrecording the set of training data of the computer system, and therecording process keeps track of the temporal relationships betweenevents from different sensors.

BRIEF DESCRIPTION OF THE FIGURES

The patent or application file contains at least one drawing executed incolor. Copies of this patent or patent application publication withcolor drawing(s) will be provided by the Office upon request and paymentof the necessary fee.

FIG. 1 represents a system that generates extended data for apattern-recognition model used in electronic prognostication for acomputer system in accordance with some embodiments of the presentinvention.

FIG. 2 presents a flow chart illustrating a process that generatesextended data for a pattern-recognition model used in electronicprognostication for a computer system in accordance with someembodiments of the present invention.

FIGS. 3A, 3B, and 3C present, respectively, monitored and estimatedsignals, residuals, and sequential probability ratio test (SPRT) alarmsfrom a computer system (with no real degradation) operating outside ofthe training regime in which the pattern-recognition model was trainedusing a training data set and without extended data.

FIGS. 4A, 4B, and 4C present, respectively, monitored and estimatedsignals, residuals, and SPRT alarms from a computer system (with no realdegradation) operating outside of the training regime in which thepattern-recognition model was trained using a training data set alongwith extended data.

FIGS. 5A, 5B, and 5C present, respectively, monitored and estimatedsignals, residuals, and SPRT alarms from a computer system (with realdegradation of a sensor) in which the pattern-recognition model wastrained using a training data set and without extended data.

FIGS. 6A, 6B, and 6C present, respectively, monitored and estimatedsignals, residuals, and SPRT alarms from a computer system (with realdegradation of a sensor) in which the pattern-recognition model wastrained using a training data set along with extended data.

DETAILED DESCRIPTION

The following description is presented to enable any person skilled inthe art to make and use the invention, and is provided in the context ofa particular application and its requirements. Various modifications tothe disclosed embodiments will be readily apparent to those skilled inthe art, and the general principles defined herein may be applied toother embodiments and applications without departing from the spirit andscope of the present invention. Thus, the present invention is notlimited to the embodiments shown, but is to be accorded the widest scopeconsistent with the principles and features disclosed herein.

The data structures and code described in this detailed description aretypically stored on a computer-readable storage medium, which may be anydevice or medium that can store code and/or data for use by a computersystem. The computer-readable storage medium includes, but is notlimited to, volatile memory, non-volatile memory, magnetic and opticalstorage devices such as disk drives, magnetic tape, CDs (compact discs),DVDs (digital versatile discs or digital video discs), or other mediacapable of storing computer-readable media now known or later developed.

The methods and processes described in the detailed description sectioncan be embodied as code and/or data, which can be stored in acomputer-readable storage medium as described above. When a computersystem reads and executes the code and/or data stored on thecomputer-readable storage medium, the computer system performs themethods and processes embodied as data structures and code and storedwithin the computer-readable storage medium.

Furthermore, the methods and processes described below can be includedin hardware modules. For example, the hardware modules can include, butare not limited to, application-specific integrated circuit (ASIC)chips, field-programmable gate arrays (FPGAs), and otherprogrammable-logic devices now known or later developed. When thehardware modules are activated, the hardware modules perform the methodsand processes included within the hardware modules.

FIG. 1 represents a system that generates extended data for apattern-recognition model used in electronic prognostication for acomputer system in accordance with some embodiments. Computer system 100is coupled to module 102. Furthermore, module 102 includes executionmechanism 104, performance-parameter monitor 106, regression-coefficientmechanism 108, stretching mechanism 110 and extended-data-generationmechanism 112.

Computer system 100 can include but is not limited to a server, a serverblade, a datacenter server, a field-replaceable unit, an enterprisecomputer, or any other computation system that includes one or moreprocessors and one or more cores in each processor.

Execution mechanism 104 can be any device that can execute load script114 on computer system 100. Execution mechanism 104 can be implementedin any combination of hardware and software. In some embodiments,execution mechanism 104 operates on computer system 100. In otherembodiments, execution mechanism 104 operates on one or more serviceprocessors. In still other embodiments, execution mechanism 104 islocated inside of computer system 100. In yet other embodiments,execution mechanism 104 operates on a separate computer system.

Performance-parameter monitor 106 can be any device that can monitorperformance parameters from sensors of computer system 100. Performanceparameter can include but is not limited to one or more of:temperatures, currents, and/or voltages of computer system 100 or anychip (including a processor) in computer system 100; fan speeds;performance metrics, loads (including current loads), moving historywindow of load, throughput variables, or transaction latencies oncomputer system 100 or one or more processors in computer system 100;and time series of any performance parameter. Performance parameters canalso include but are not limited to performance parameters as set forthin U.S. Pat. No. 7,020,802, entitled “Method and Apparatus forMonitoring and Recording Computer System Performance Parameters,” byKenny C. Gross and Larry G. Votta, Jr., issued on 28 Mar. 2006, which ishereby fully incorporated by reference.

Note that sensors of computer system 100 can include but are not limitedto physical sensors located in computer system 100, and virtual sensorsthat generate performance parameters of computer system 100. Forexample, performance parameters can include but are not limited tophysical parameters measured using sensors located in or near computersystem 100 such as temperatures and humidity within computer system 100,internal parameters of computer system 100 maintained by softwareoperating on computer system 100 such as system throughput, transactionlatencies and queue length in computer system 100, and canary parametersassociated with distributed synthetic user transactions periodicallygenerated for performance measuring purposes, such as user wait timesand other quality of service metrics.

Performance-parameter monitor 106 can be implemented in any combinationof hardware and software. In some embodiments, performance-parametermonitor 106 operates on computer system 100. In other embodiments,performance-parameter monitor 106 operates on one or more serviceprocessors. In still other embodiments, performance-parameter monitor106 is located inside of computer system 100. In yet other embodiments,performance-parameter monitor 106 operates on a separate computersystem. In some embodiments, performance-parameter monitor 106 includesa method or apparatus for monitoring and recording computer systemperformance parameters as set forth in U.S. Pat. No. 7,020,802.

Regression-coefficient mechanism 108 can be any mechanism or device thatcan receive monitored performance parameters from performance-parametermonitor 106 and determine regression coefficients between data fromdifferent sensors monitored by performance-parameter monitor 106. Insome embodiments, regression-coefficient mechanism 108 operates oncomputer system 100. In other embodiments, regression-coefficientmechanism 108 operates on one or more service processors. In still otherembodiments, regression-coefficient mechanism 108 is located inside ofcomputer system 100. In yet other embodiments, regression-coefficientmechanism 108 operates on a separate computer system.

Stretching mechanism 110 can be any mechanism or device that can stretchthe training data received from regression-coefficient mechanism 108 asdescribed below. In some embodiments, stretching mechanism 110 operateson computer system 100. In other embodiments, stretching mechanism 110operates on one or more service processors. In still other embodiments,stretching mechanism 110 is located inside of computer system 100. Inyet other embodiments, stretching mechanism 110 operates on a separatecomputer system.

Extended-data-generation mechanism 112 can be any mechanism or devicethat can extend the training data as described below. In someembodiments, extended-data-generation mechanism 112 operates on computersystem 100. In other embodiments, extended-data-generation mechanism 112operates on one or more service processors. In still other embodiments,extended-data-generation mechanism 112 is located inside of computersystem 100. In yet other embodiments, extended-data-generation mechanism112 operates on a separate computer system.

Some embodiments of the present invention operate as follows. First,execution mechanism causes load script 114 to execute on computer system100. Load script 114 may be stored on execution mechanism 104 and sentto computer system 100 or stored on computer system 100. In someembodiments, load script 114 includes but is not limited to: a sequenceof instructions that produces a load profile that oscillates betweenspecified processor utilization percentages for a processor in computersystem 100, a sequence of instructions that produces a customized loadprofile, and/or a sequence of instructions that executes predeterminedinstructions causing operation of one or more devices or processes incomputer system 100. In some embodiments of the present invention, loadscript 114 is a dynamic load script which changes the load on theprocessor as a function of time. While load script 114 is operating oncomputer system 100, performance-parameter monitor 106 monitorsperformance parameters of computer system 100 to generate training data.Note that in some embodiments, execution mechanism 104 is omitted andload script 114 is not executed on computer system 100 whileperformance-parameter monitor 106 monitors performance parameters ofcomputer system 100.

In some embodiments, performance-parameter monitor 106 monitorsperformance parameters from computer system 100 for a predeterminedtraining period which may be any length of time desired including butnot limited to 1 day, 10 days, 10 to 14 days, or any period of timerequired to generate the required training data.

After the training data is generated, a pattern-recognition model foruse in electronic prognostication for a computer system is built usingthe training data. Note that the pattern-recognition model can be builtfrom the training data using any method desired without departing fromthe present invention. In some embodiments, a predetermined number ofthe most highly correlated sensors are selected and the data from thesesensors is used to generate the training data which is then used togenerate the pattern-recognition model.

In some embodiments, the pattern-recognition model uses a nonlinear,nonparametric regression technique. In some embodiments, thepattern-recognition model uses a multivariate state estimation technique(MSET). Note that the term “MSET” as used in this specification refersto a class of pattern-recognition algorithms. For example, see [Gribok]“Use of Kernel Based Techniques for Sensor Validation in Nuclear PowerPlants,” by Andrei V. Gribok, J. Wesley Hines, and Robert E. Uhrig, TheThird American Nuclear Society International Topical Meeting on NuclearPlant Instrumentation and Control and Human-Machine InterfaceTechnologies, Washington D.C., Nov. 13-17, 2000. This paper outlinesseveral different pattern recognition approaches. Hence, the term “MSET”as used in this specification can refer to (among other things) anytechnique outlined in [Gribok], including ordinary least squares (OLS),support vector machines (SVM), artificial neural networks (ANNs), MSET,or regularized MSET (RMSET).

Note that the pattern-recognition model can be built for any type ofelectronic prognostication including but not limited to one or more ofthe purposes described in: U.S. patent application entitled “ComputerSystem with Integrated Electromagnetic-Interference Detectors,” bySteven F. Zwinger, Kenny C. Gross, and Aleksey M. Urmanov, Ser. No.12/132,878 filed on 4 Jun. 2008, which is hereby fully incorporated byreference; U. S. patent application entitled “Characterizing a ComputerSystem Using Radiating Electromagnetic Signals Monitored by anInterface,” by Andrew J. Lewis, Kenny C. Gross, Aleksey M. Urmanov, andRamakrishna C. Dhanekula, Ser. No. 12/177,724 filed on 22 Jul. 2008,which is hereby fully incorporated by reference; U.S. patent applicationentitled “Generating a Utilization Charge for a Computer System,” byKalyanaraman Vaidyanathan, Steven F. Zwinger, Kenny C. Gross and AlekseyM. Urmanov, Ser. No. 12/269,575 filed on 12 Nov. 2008, which is herebyfully incorporated by reference; and U.S. patent application entitled“Estimating Relative Humidity Inside a Computer System,” by Leoncio D.Lopez, Kenny C. Gross, and Kalyanaraman Vaidyanathan, Ser. No.12/114,363 filed on 2 May 2008, which is hereby fully incorporated byreference.

The training data used to generate the pattern-recognition model is thensent to regression-coefficient mechanism 108. Regression-coefficientmechanism 108 determines a regression coefficient for data from eachsensor with each of the other sensors. For example, if there are Nsensors, then regression-coefficient mechanism 108 determines theregression coefficients, RC_(1i), between sensor 1 and sensors 2 (RC₁₂)through N (RC_(1N)); then, RC_(2i), between sensor 2 (RC₂₁) and sensors1, 3 (RC₂₃) through N (RC_(2N)); and repeats this process up tocomputing the regression coefficients, RC_(Ni), between sensor N andsensors 1 (RC_(N1)) through N−1 (RCN_((N−1))).

Stretching mechanism 110 then receives the training data and regressioncoefficients from regression-coefficient mechanism 108. Stretchingmechanism 110 then stretches the training data. In some embodiments, thetraining data is stretched as follows: for each sensor, the data fromeach other sensor is stretched by a predetermined amount. For example,in some embodiments, the training data is stretched in the positivedirection by x % by multiplying the data from each of the other sensorsby 1+(x/100) if the data is positive and by 1−(x/100) if the data isnegative. The stretched data is then generated as follows: for eachsensor, i, the stretched data, E_(j), for each other sensor, j (j≠i) ismultiplied by the regression coefficient RC_(ij) between data fromsensor i and data from sensor j and then summed together. Therefore, theexpanded data for sensor i, S_(i) is:

$\begin{matrix}{S_{i} = {\sum\limits_{j = {1{({j \neq i})}}}^{N}{{RC}_{ij}E_{j}}}} & (1)\end{matrix}$

Note that in some embodiments, the training data is stretched in thenegative direction. For example, for each sensor, the training data fromeach other sensor is stretched in the negative direction by y % bymultiplying the training data from each other sensor by 1−(y/100) if thedata is positive and by 1+(y/100) if the data is negative. The expandeddata is then generated as above using equation 1.

In some embodiments, the training data is stretched in both the positivedirection and the negative direction, and the two sets of expanded dataare combined with the original training data. In some embodiments, thetraining data is expanded in both the positive and negative direction by5%.

In some embodiments, the training data and the expanded data are used totrain a pattern-recognition model. Furthermore, in some embodiments, thepredetermined amount that the training data is stretched is determinedbased on the performance of the pattern-recognition model trained usingthe training data and the expanded data. For example, alarms generatedusing the output from a pattern-recognition model trained using thetraining data and the expanded data can be compared to alarms generatedusing output from a pattern-recognition model trained using only thetraining data. Specifically, a statistical hypothesis test such a SPRTcan be applied to the output of the pattern-recognition model togenerate alarms. Then, the predetermined amount that the training datais stretched by to generate the expanded data can be determined bysetting a limit on the number of false alarms generated and/or thesensitivity of the alarm generation to the electronic prognosticationgoals of the pattern-recognition model, including but not limited to afailure of a sensor or component in computer system 100. In oneembodiment, the predetermined amount that the training data is stretchedby is determined by requiring the number of false alarms to be zero whena component such as a memory module is upgraded, while ensuring thatalarms are still generated by a failing upgraded or non-upgraded memorymodule.

FIG. 2 presents a flow chart illustrating a process that generatesextended data for a pattern-recognition model used in electronicprognostication for a computer system in accordance with someembodiments. First, the N sensors with the highest correlation areselected and used to build a pattern-recognition model (operation 202).Then, a loop counter, i, is set equal to 1 (operation 204). Next, thei^(th) sensor is set as the dependent sensor and the other N−1 sensorsare set as independent sensors (operation 206), and regressioncoefficients RC_(ij) are determined for training data from sensor i withdata from each of the other N−1 sensors j, as j goes from 1 to N (j≠i)(operation 208). The loop counter is incremented by 1 (operation 210),and if the loop counter is not greater than N (operation 212), then theprocess returns to operation 206. If the loop counter is greater than N(operation 212), then the process continues to operation 214.

Next, the loop counter, i, is set to 1 (operation 214). The i^(th)sensor is then set as the dependent sensor and the other N−1 sensors areset as independent sensors (operation 216). The data from each dependentsensor is stretched by +5% (operation 218). The data is multiplied by1.05 to stretch it by +5% if the data is positive and multiplied by 0.95if the data is negative. The stretched data for each dependent sensor isthen multiplied by the regression coefficient between the dependentsensor and the independent sensor (operation 218). Extended data for thei^(th) sensor is then generated by summing the product of the stretcheddata for each dependent sensor and the regression coefficient betweenthe dependent sensor and the independent sensor (218).

Then, the data from each dependent sensor is stretched by −5% (operation220). The data is multiplied by 0.95 to stretch it by −5% if the data ispositive, and multiplied by 1.05 if the data is negative. The stretcheddata for each dependent sensor is then multiplied by the regressioncoefficient between the dependent sensor and the independent sensor(operation 220). Extended data for the i^(th) sensor is then generatedby summing the product of the stretched data for each dependent sensorand the regression coefficient between the dependent sensor and theindependent sensor (operation 220).

Next, the loop counter is increased by 1 (operation 222), and if theloop counter is not greater than N (operation 224), then the processreturns to operation 216. If the loop counter is greater than N(operation 224), then the process continues to operation 226. Then, theextended training data is generated by combining the extended data andthe training data (operation 226). In some embodiments, the extendeddata and the training data are combined to generate the extendedtraining data by concatenating the extended data and the training data.

In some embodiments, values for stretching the data other than +5% or−5% can be used without departing from the present invention. Asdiscussed both above and below, a pattern-recognition model based on thetraining data and excluding the extended data can be tested to determineif a pattern-recognition model generated using both the training dataand the extended data results in acceptable performance of thepattern-recognition model.

FIGS. 3 and 4 depict performance parameters monitored from a computersystem operating in a regime outside of the training data set but withno real degradation of the computer system. The monitored parameters areused as input to a pattern-recognition model to generate residuals andalarms using SPRT.

FIG. 3A depicts a monitored signal representing data monitored from thecomputer system and an estimate of the monitored signal generated from apattern-recognition model trained using training data without extendeddata. During the monitoring depicted in FIG. 3A, the computer systemoperated in a regime outside of the regime it operated in during thetraining period due to an upgrade of memory DIMMs in the computer systemafter the training period. FIG. 3B represents a residual signalgenerated by taking the difference between the monitored signal and theestimated signal depicted in FIG. 3A. FIG. 3C represents alarmsgenerated based on a SPRT. Note that in FIG. 3C, after about 1500minutes, SPRT alarms are generated as the computer system operatesoutside of the operating regime during which the training data wasgenerated, even though the computer system is properly functioning.

FIG. 4A depicts a monitored signal representing data monitored from thecomputer system and an estimate of the monitored signal generated usinga pattern-recognition model trained using training data along withextended data. During the monitoring depicted in FIG. 4A, the computersystem operated in a regime outside of the regime during the trainingperiod due to an upgrade of memory DIMMs in the computer system afterthe training period. FIG. 4B represents a residual signal generated bytaking the difference between the monitored signal and the estimatedsignal depicted in FIG. 4A. FIG. 4C represents alarms generated based ona SPRT of the residuals in FIG. 4B. Note that in FIG. 4C, no SPRT alarmsare generated as the computer system operates outside of the operatingregime in which the training data was generated.

In some embodiments, the predetermined amount that the training data isstretched is determined based on the number of false alarms generatedusing a pattern-recognition model that was trained using both thetraining data and the extended data as the computer system operates in aregime outside of the regime in which the training data was generated.In some embodiments, the predetermined amount is determined based ongenerating no false alarms as the computer system operates in a regimeoutside of the regime in which the training data was generated. Forexample, the predetermined amount may be set by requiring that no falsealarms are generated when a memory module in a computer system isupgraded and the computer system is functioning correctly.

FIGS. 5 and 6 depict monitored and estimated signals, residuals and SPRTalarms from a computer system in which there is real degradation of themonitored computer system in the form of degradation of a sensor used tomonitor data from the computer system. FIG. 5A depicts a monitoredsignal representing data monitored from the computer system and anestimate of the monitored signal generated using a pattern-recognitionmodel trained using the training data without extended data. FIG. 5Brepresents the residual signal generated by taking the differencebetween the monitored signal and the estimated signal depicted in FIG.5A. Note that in FIG. 5C, after about 1500 minutes, alarms are generatedas a result of the degradation of the sensor being detected by SPRT.

FIG. 6A depicts a monitored signal representing data monitored from thecomputer system and an estimate of the monitored signal generated usinga pattern-recognition model trained using the training data along withextended data. FIG. 6B represents the residual signal generated bytaking the difference between the monitored signal and the estimatedsignal depicted in FIG. 6A. Note that in FIG. 6C just as in FIG. 5C,after about 1500 minutes, SPRT alarms are generated as a result of thedegradation of the sensor being detected by the SPRT. The similarity ofthe response of the SPRT alarms in FIGS. 5C and 6C shows that there isno loss of sensitivity in the ability of the pattern-recognition modeltrained using the training data combined with the extended data todetect degradation of the computer system.

In some embodiments, the predetermined amount that the training data isstretched is determined based on a comparison of the number of alarmsgenerated during degradation of the computer system when thepattern-recognition model is trained using only the training data(training data alarms) and when the pattern-recognition model is trainedusing the training data and the extended data (stretched data alarms).In some embodiments, the predetermined amount is determined based ongenerating an equal number of alarms when the pattern-recognition modelis trained using only the training data (training data alarms) and whenthe pattern-recognition model is trained using the training data and theextended data (stretched data alarms).

The foregoing descriptions of embodiments have been presented forpurposes of illustration and description only. They are not intended tobe exhaustive or to limit the present description to the formsdisclosed. Accordingly, many modifications and variations will beapparent to practitioners skilled in the art. Additionally, the abovedisclosure is not intended to limit the present description. The scopeof the present description is defined by the appended claims.

What is claimed is:
 1. A method for generating extended data for apattern-recognition model used in electronic prognostication for acomputer system, the method comprising: for each sensor in a set ofsensors, determining a regression coefficient between training data fromthe sensor and training data from each of the other sensors in the setof sensors; and for each sensor in the set of sensors, stretching thetraining data from each of the other sensors by a predetermined amount;and generating extended data for the sensor based on the stretchedtraining data for each of the other sensors and the regressioncoefficients between training data from the sensor and training datafrom each of the other sensors.
 2. The method of claim 1, wherein thepattern-recognition model uses a nonlinear, nonparametric regressiontechnique.
 3. The method of claim 1, wherein the pattern-recognitionmodel uses a multivariate state estimation technique (MSET).
 4. Themethod of claim 1, wherein the predetermined amount that the trainingdata is stretched is determined based on a difference between: stretcheddata alarms generated by a statistical hypothesis test of residualsusing a test data set for the pattern-recognition model trained withboth the training data set and the extended data; and training dataalarms generated by the statistical hypothesis test of residuals usingthe test data set for the pattern-recognition model trained with thetraining data set and excluding the extended data.
 5. The method ofclaim 4, wherein the test data set includes test data collected duringdegradation of the computer system, and wherein the number of trainingdata alarms is equal to the number of stretched data alarms.
 6. Themethod of claim 4, wherein the test data set includes test datacollected during periods where there is no degradation of the computersystem and there are no false stretched data alarms.
 7. The method ofclaim 1, further including: for each sensor in the set of sensors,stretching the training data from each of the other sensors by a secondpredetermined amount; and generating extended data for the sensor basedon the training data stretched by the second predetermined amount, foreach of the other sensors and the regression coefficients betweentraining data from the sensor and training data from each of the othersensors.
 8. A method of claim 1, wherein the set of sensors includesonly a predetermined number of the sensors in the computer system withthe highest correlations.
 9. The method of claim 1, wherein the trainingdata is monitored from the sensors in the computer system during atraining period; wherein monitoring the training data includessystematically monitoring and recording the set of training data of thecomputer system; and wherein the recording process keeps track of thetemporal relationships between events from different sensors.
 10. Acomputer-readable storage medium storing instructions that when executedby a computer cause the computer to perform a method for generatingextended data for a pattern-recognition model used in electronicprognostication for a computer system, the method comprising: for eachsensor in a set of sensors, determining a regression coefficient betweentraining data from the sensor and training data from each of the othersensors in the set of sensors; and for each sensor in the set ofsensors, stretching the training data from each of the other sensors bya predetermined amount; and generating extended data for the sensorbased on the stretched training data for each of the other sensors andthe regression coefficients between training data from the sensor andtraining data from each of the other sensors.
 11. The computer-readablestorage medium of claim 10, wherein the pattern-recognition model uses anonlinear, nonparametric regression technique.
 12. The computer-readablestorage medium of claim 10, wherein the pattern-recognition model uses amultivariate state estimation technique (MSET).
 13. Thecomputer-readable storage medium of claim 10, wherein the predeterminedamount that the training data is stretched is determined based on adifference between: stretched data alarms generated by a statisticalhypothesis test of residuals using a test data set for thepattern-recognition model trained with both the training data set andthe extended data; and training data alarms generated by the statisticalhypothesis test of residuals using the test data set for thepattern-recognition model trained with the training data set andexcluding the extended data.
 14. The computer-readable storage medium ofclaim 13, wherein the test data set includes test data collected duringdegradation of the computer system, and wherein the number of trainingdata alarms is equal to the number of stretched data alarms.
 15. Thecomputer-readable storage medium of claim 13, wherein the test data setincludes test data collected during periods where there is nodegradation of the computer system and there are no false stretched dataalarms.
 16. The computer-readable storage medium of claim 10, furtherincluding: for each sensor in the set of sensors, stretching thetraining data from each of the other sensors by a second predeterminedamount; and generating extended data for the sensor based on thetraining data stretched by the second predetermined amount, for each ofthe other sensors and the regression coefficients between training datafrom the sensor and training data from each of the other sensors.
 17. Acomputer-readable storage medium of claim 10, wherein the set of sensorsincludes only a predetermined number of the sensors in the computersystem with the highest correlations.
 18. The computer-readable storagemedium of claim 10, wherein the training data is monitored from thesensors in the computer system during a training period; whereinmonitoring the training data includes systematically monitoring andrecording the set of training data of the computer system; and whereinthe recording process keeps track of the temporal relationships betweenevents from different sensors.
 19. An apparatus for generating extendeddata for a pattern-recognition model used in electronic prognosticationfor a computer system, the apparatus comprising: a determining mechanismconfigured to determine, for each sensor in a set of sensors, aregression coefficient between training data from the sensor andtraining data from each of the other sensors in the set of sensors; agenerating mechanism configured, for each sensor in the set of sensors,to stretch the training data from each of the other sensors by apredetermined amount, and generate extended data based on the stretchedtraining data for each of the other sensors and the regressioncoefficients between training data from the sensor and training datafrom each of the other sensors.
 20. The apparatus of claim 19, furtherincluding: a monitoring mechanism configured to monitor the trainingdata from the sensors in the computer system during a training period,wherein the monitoring mechanism includes a mechanism that is configuredto systematically monitor and record the training data of the computersystem, and wherein the monitoring mechanism includes a mechanism thatis configured to keep track of the temporal relationships between eventsfrom different sensors.